using Headsight.BPMN2WF.BPMN.Model;

namespace Headsight.BPMN2WF.BPMN.BlockModel
{
    /// <summary>
    /// Traverse a <see cref="Model.BPMNFlowNodesBlock"/> and tries to segment/slice/transform it into
    /// <see cref="BPMNFlowNodesBlock"/>s with at most one <i>incoming flow</i> and
    /// at most one <i>outgoing flow</i>.
    /// </summary>
    public interface IBPMNFlowNodesBlock2BlockTransformer
    {
        BPMNFlowNodesBlock Transform(BPMNFlowNodesBlock originalBpmnFlowNodesBlock);
    }
}